package com.douqu.game;

import javax.swing.*;
import java.awt.*;

/**
 * @author: miracle.
 * Description: 对原来的菜单进行分类 与 抽象
 * Date: 2018/8/8 0008 下午 3:04
 * Huan Yu Copyright (c) 2017 All Rights Reserved.
 */
public class MenuManager {

    protected boolean working = false;

    protected MainFrame mainFrame;

    protected Container container;

    /**
     * 日志可以为静态有一个就行 因为每个菜单之间是互斥的所以不会影响
     */
    protected static JTextArea contentText;

    public MenuManager(Container container,MainFrame mainFrame){
        this.container = container;
        this.mainFrame = mainFrame;
    }

    public static void println(String value){
        if (contentText == null){
            return;
        }
        contentText.append(System.lineSeparator());
        contentText.append(value);
    }

    /**
     * 生成固定的注释 说明文档
     * 文档不能超过
     * @param text 具体内容
     * @Param high 高度
     */
    public void initRemark(String text,int higt){

        JLabel remark = new JLabel();
        remark.setBounds(20,10,600,higt);
        remark.setFont(MainFrame.font18);
        remark.setForeground(new Color(0,0,0));
        remark.setText(text);

        container.add(remark);
    }

    /**
     * 初始化菜单页面后必须调用 进行重画
     */
    public void initEnd(String text){
        mainFrame.setVisible(true);
        mainFrame.repaint();
        println("初始化" + text + " ...");
        println("初始化" + text + "完成 ");
    }

    /**
     * 初始化监听
     */
    public void startActionListener(){
        if(working)
            return;
        working = true;
    }

    /**
     * 结束监听
     */
    public void endActionListener(){
        working = false;
    }

    public MainFrame getMainFrame() {
        return mainFrame;
    }

    public void setMainFrame(MainFrame mainFrame) {
        this.mainFrame = mainFrame;
    }
}
